'\"macro stdmacro
.\"
.\" Copyright (c) 2017 Red Hat.
.\"
.\" This program is free software; you can redistribute it and/or modify it
.\" under the terms of the GNU General Public License as published by the
.\" Free Software Foundation; either version 2 of the License, or (at your
.\" option) any later version.
.\"
.\" This program is distributed in the hope that it will be useful, but
.\" WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
.\" or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
.\" for more details.
.\"
.\"
.ds ia docker
.ds IA DOCKER
.ds Ia Docker
.TH PMDADOCKER 1 "PCP" "Performance Co-Pilot"
.SH NAME
\f3pmdadocker\f1 \- \*(ia performance metrics domain agent (PMDA)
.SH SYNOPSIS
\f3$PCP_PMDAS_DIR/pmda\*(ia\f1
[\f3\-d\f1 \f2domain\f1]
[\f3\-l\f1 \f2logfile\f1]
.SH DESCRIPTION
.B pmda\*(ia
is a \*(ia Performance Metrics Domain Agent (PMDA) which exposes
performance metrics as reported from the Docker Remote API.
.PP
A brief description of the
.B pmda\*(ia
command line options follows:
.TP 5
.B \-d
It is absolutely crucial that the performance metrics
.I domain
number specified here is unique and consistent.
That is,
.I domain
should be different for every PMDA on the one host, and the same
.I domain
number should be used for the same PMDA on all hosts.
.TP
.B \-l
Location of the log file.  By default, a log file named
.I \*(ia.log
is written in the current directory of
.BR pmcd (1)
when
.B pmda\*(ia
is started, i.e.
.BR $PCP_LOG_DIR/pmcd .
If the log file cannot
be created or is not writable, output is written to the standard error instead.
.P
Remote API metric requests are activated automatically and are fetched
on a timer.  This timer is represented as a by
.B pmda\*(ia
via the
.B docker.control.timing.
By default,
.B pmda\*(ia
will be set to fetch on a 1 second interval.
.PP
.B pmda\*(ia
will iterate over three different
.B \*(ia
remote API calls:
.TP
.B /containers/$ID/json
Container metrics regarding the current state of the container. Such as PID,
name or if the container is running.
.TP
.B /version
Basic version metrics about the current docker deamon in use.
.TP
.B /containers/$ID/stats?stream=0
More in depth memory and cpu metrics of the container.
.SH INSTALLATION
If you want access to the names, help text and values for the \*(ia
performance metrics, do the following as root:
.PP
.ft CW
.nf
.in +0.5i
# cd $PCP_PMDAS_DIR/\*(ia
# ./Install
.in
.fi
.ft 1
.PP
If you want to undo the installation (and remove both PMDAs),
do the following as root:
.PP
.ft CW
.nf
.in +0.5i
# cd $PCP_PMDAS_DIR/\*(ia
# ./Remove
.in
.fi
.ft 1
.PP
.B pmda\*(ia
is launched by
.BR pmcd (1)
and should never be executed directly.
The Install and Remove scripts notify
.BR pmcd (1)
when the agent is installed or removed.
.SH FILES
.PD 0
.TP 10
.B $PCP_PMCDCONF_PATH
command line options used to launch
.B pmda\*(ia
.TP 10
.B $PCP_PMDAS_DIR/\*(ia/help
default help text file for the \*(ia metrics
.TP 10
.B $PCP_PMDAS_DIR/\*(ia/Install
installation script for the
.B pmda\*(ia
agent
.TP 10
.B $PCP_PMDAS_DIR/\*(ia/Remove
undo installation script for the
.B pmda\*(ia
agent
.TP 10
.B $PCP_LOG_DIR/pmcd/docker.log
default log file for error messages and other information from
.B pmda\*(ia
.PD
.SH "PCP ENVIRONMENT"
Environment variables with the prefix
.B PCP_
are used to parameterize the file and directory names
used by PCP.
On each installation, the file
.B /etc/pcp.conf
contains the local values for these variables.
The
.B $PCP_CONF
variable may be used to specify an alternative
configuration file,
as described in
.BR pcp.conf (5).
In particular, the
.B $PCP_DOCKER_DIR
may be set to change the default directory from
.BR /var/lib/docker .
.SH SEE ALSO
.BR PCPIntro (1),
.BR pmcd (1),
.BR pcp.conf (5),
.BR pcp.env (5)
and
.BR docker (1).
